package com.csun.cmny.provider.dao;

import com.csun.cmny.provider.device.csun.camera.entity.CsunCameraData;
import com.csun.cmny.provider.model.domain.DmcCsunCameraLocation;
import com.csun.cmny.provider.model.domain.DmcCsunGatewayLocation;
import com.csun.cmny.provider.model.dto.camera.CsunCameraQueryDto;
import com.csun.cmny.provider.model.dto.gateway.CsunGatewayQueryDto;
import com.csun.cmny.provider.model.vo.GatewayReqVo;
import com.csun.cmny.provider.model.dto.propertyManagement.SelectDeviceDataDto;
import com.csun.cmny.provider.model.vo.csuncamera.CsunCameraVo;
import com.csun.cmny.provider.model.vo.gateway.DmcGatewayVo;
import com.csun.cmny.provider.model.vo.life.DmcDeviceByRoom;
import org.apache.ibatis.annotations.Param;
import com.csun.cmny.provider.model.vo.propertyManagement.PropertyDataVo;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

public interface DmcCsunGatewayLocationMapper extends Mapper<DmcCsunGatewayLocation> {


    List<DmcGatewayVo> queryDeviceListWithPage(CsunGatewayQueryDto csunGatewayQueryDto);

    DmcDeviceByRoom selectRoomIdByDeviceId(Long alertId);

    /**
     * 根据房间Id查询网关
     *
     * @param roomIdList the room id list
     *
     * @return the gateway req vo
     */
    List<GatewayReqVo> queryGatewayByRoomIds(@Param("roomIdList") List<Integer> roomIdList);

    List<PropertyDataVo> selectDeviceData(SelectDeviceDataDto selectDeviceDataDto);
}